#******************************************************************
#
# Copyright 2014 Intel Mobile Communications GmbH All Rights Reserved.
#
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

##
# 'resource' sub-project main build script
#
##

Import('env')

target_os = env.get('TARGET_OS')

# Build C Common dependencies
SConscript('c_common/SConscript')

if target_os not in ['darwin', 'ios', 'android', 'msys_nt', 'windows']:
    env.AppendUnique(LIBS=['rt'])

# Download (if not already present) & build libcoap
SConscript('#extlibs/libcoap/SConscript')

# Build csdk
SConscript('csdk/SConscript')


if target_os not in ['darwin']:

    # Build liboc_logger
    SConscript('oc_logger/SConscript')

    # Build liboc
    SConscript('src/SConscript')

if target_os in ['windows', 'linux']:
    # Build IoTivity Procedural Client API
    SConscript('IPCA/SConscript')

if target_os not in ['darwin', 'ios', 'android']:
    # Build examples
    SConscript('examples/SConscript')

if target_os in ['linux', 'windows', 'darwin', 'msys_nt', 'webos']:
    if target_os == 'darwin':
        env.Command('#/out/darwin/iotivity-csdk.framework', None,
                    '#/tools/darwin/mkfwk_osx.sh')

    # Build C/C++ unit tests
    if env.get('WITH_TEST'):
        SConscript('unit_tests.scons')
